CountDownLatch
1. 前言
- 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。
- 计数器无法重置
2. 源码解析
2.1 数据结构
CountDownLatch包含Sync对象,Sync继承于AQS,底层使用AQS共享锁实现
2.2 核心方法
- CountDownLatch()构造方法
1 | public CountDownLatch(int count) { |
- await()
1 | public void await() throws InterruptedException { |
- countDown()释放锁
1 | public void countDown() { |